﻿
namespace HyperF


// http://msdn.microsoft.com/en-us/library/cc136822(VS.85).aspx
type VMState =
| Unknown = 0
| Other = 1             // this value is never set
| Running = 2
| Stopped = 3
| Reboot = 10           // this value is used only for RequestStateChange 
| Reset = 11            // this value is used only for RequestStateChange, and it's for future use
| Paused = 32768
| Suspended = 32769
| Starting = 32770
| Snapshotting = 32771  // Starting with Windows Server 2008 R2 this value is not supported
| Saving = 32773
| Stopping = 32774
| Pausing = 32776
| Resuming = 32777


type VMHealthState =
| Unknown = 0
| OK = 5
| MajorFailure = 20     // This value is not supported before Windows Server 2008 R2.
| CriticalFailure = 25


type VMHeartbeat =
| Unknown = 0
| OK = 2
| Error = 6
| NoContact = 12
| LostCommunication = 13



type BootMedia =
| Floppy = 0
| CD = 1
| IDE = 2
| NET = 3 


type StartupAction =
| None = 0
| RestartOnly = 1
| AlwaysStartup = 2


type ShutDownAction = 
| TurnOff = 0
| SaveState = 1
| ShutDown = 2


type Recoveryaction =
| None = 0
| Restart = 1
| RevertToSnapShot = 2


type DiskType =
| Fixed = 2
| Dynamic = 3
| Differencing = 4
| PhysicalDrive = 5


//--------------------------------------------------

type ProcessorArchitecture =
| Processor_Architecture_Unknown = 0xffff
| Processor_Architecture_INTEL = 0
| Processor_Architecture_IA64 = 6
| Processor_Architecture_AMD64 = 9
